package com.book.book.service;

import com.book.book.entity.Novel;

import java.util.Iterator;
import java.util.List;

/***
 * @Author Lin
 * @Date Create By 12:23 2017/10/7
 * @Description 爬取某个站点的小说列表
 */
public interface NovelSpider {
    //抓取某一个页面时的最大的尝试次数
    public static final int MAX_TRY_TIMES = 5;

    /**
     * 根据网址获取小说实体
     *
     * @return
     */
    public List<Novel> getNovel(String url, Integer maxTryTimes);

    public List<Novel> getNovel(String url);

    /**
     * 判断抓取列表是否有下一页
     *
     * @return
     */
    public boolean hasNext();

    /**
     * 返回抓取列表下一页地址
     *
     * @return
     */
    public String next();

    public Iterator<List<Novel>> iterator(String firstPage, Integer maxTryTimes);
}
